﻿using System.Collections;

namespace CRM.Database.Model
{
    public class SchedulerDataObject
    {
        public IEnumerable Appointments { get; set; }
        public IEnumerable Resources { get; set; }

        #region Extended static properties

        /// <summary>
        /// Возвращает заполненный объект планировщика для отображения календаря
        /// </summary>
        /// <returns></returns>
        public static SchedulerDataObject TrainingsSchedulerObject
        {
            get
            {
                var trainersCol = new TrainingsTrainersCollection();
                var coursesCol = new TrainingsCoursesCollection();
                return new SchedulerDataObject
                           {
                               Appointments = coursesCol.CoursesAsSchedulerAppointments,
                               Resources = trainersCol.TrainersAsSchedulerResources
                           };
            }
        }

        /// <summary>
        /// Возвращает заполненный объект планировщика для отображения календаря техников
        /// </summary>
        /// <returns></returns>
        public static SchedulerDataObject TechnicSchedulerObject
        {
            get
            {
                var requestsCol = new TechnicRequestsCollection();
                return new SchedulerDataObject
                           {
                               Appointments = requestsCol.RequestsAsSchedulerAppointments,
                               Resources = requestsCol.TechnicsAsSchedulerResources
                           };
            }
        }

        #endregion
    }
}